8/8/2020

Introduzione

  • Che cos’è Steam?
  • Perché vale la pena analizzare questi dati?
  • Che tipi di relazioni possiamo osservare?
  • Cosa possiamo valutare?
  • Possiamo usare questi dati per consigliare videogiochi da giocare?

Librerie utilizzate

DT, visNetwork, networkD3
Rcpp, sets, rmarkdown
circlize, knitr, plyr
dplyr, ggplot2, igraph
purrr, ggraph, tidyr
tidygraph, rlang, netrankr
corrplot, lpSolve, lpSolveAPI
Rglpk, DT

Dataset considerati

Dataset 200K o dei giocatori

Mostriamo qui la struttura del primo dataset:

Informazioni generali

Con una prima e rapida analisi possiamo calcolare le dimensioni effettive del dataset:

  • 12393 giocatori diversi
  • 5154 giochi diversi
  • 129511 acquisti
  • 70489 giochi giocati

Si vede già qui il problema del “backlog”.

Dataset dei Giochi

Molto più ricco è invece il secondo dataset:

Con un totale di 27075 giochi.

Analisi esplorativa

Dataset dei giochi giocati

Quali sono i giochi più giocati?

Nelle prime posizioni sono quasi tutti giochi di Valve.

distribuzione del tempo di gioco

distribuzione del numero di giocatori

distribuzione del tempo medio di gioco

Relazione tra tempo medio di gioco e numero di giocatori

In scala logaritmica:

Unione dei dataset

  • Molte più informazioni disponibili
  • Impossibilità di considerare diversi giochi
  • Esempi: serie BioShock e Civilization

Datare il dataset 200K

Da Kaggle non era possibile avere delle informazioni precise su quando il dataset 200K fosse stato acquisito. E’ possibile datarlo utilizzando tre dati:

  • La problematica citata sulla serie BioShock
  • La presenza del gioco “out there somewhere” (il problema degli Early Access)
  • L’assenza di giocatori di Civilization VI

Datare il dataset 200K

L’assenza di giocatori di Civilization VI risulta statisticamente improbabile:

  • Nell’ottobre 2016 vi erano 162310 utenti attivi in contemporanea (circa 1 MLN di copie vendute)
  • Gli utenti Steam attivi nel 2018 erano 90 Milioni (e il dato è sempre in crescita)
  • secondo queste osservazioni, la probabilità che il non campionamento sia casuale è compresa tra 1.265784e-09 e 1.170284e-05

Recensioni di utenti e recensori

Apprezzamento dei giochi della serie Civilization

Basato sulla percentuale di valutazioni positive degli utenti Steam:

Il dataset di Metacritic

  • Cos’è metacritic?
  • Non solo dati di giochi, non solo dati di giochi per PC.
  • Userscore e Metascore

Il dataset di Metacritic

Userscore vs Metascore

Userscore vs Metascore e Civilization

Userscore vs apprezzamento Steam e Civilization

Fit apprezzamento/voto

Review Bombing e Delta userscore/metascore

Star Wars Battlefront II è un gioco emblematico per questo fenomeno.

Unione dati metacritic e completezza

Volendo usare sempre i dati di metacritic si perderebbero 1321 giochi e 817 giocatori. Per questo:

  • Si accettano valori non definiti
  • Viene usato il modello lineare generalizzato calcolato per stimare il Metascore (se assente)

Altre domande sui dati tabulari

I giochi vecchi sono i migliori?

Essere un gioco Indie ha un impatto positivo o negativo?

Piattaforme di gioco

Giochi F2P

Cosa vuol dire veramente “Free to Play”?

Tempo di gioco per genere

Questo è solo un esempio di uso possibile per le Tag.

Costo medio dell’intrattenimento

In scala logaritmica:

Reti

Rete giochi giocatori

Distribuzione dei gradi

Segue il modello ad attacco preferenziale di Barabasi-Albert

Componente gigante

La ricerca delle componenti connesse restituisce il seguente output, mostrando la presenza della componente gigante, come atteso.

[1] 16
[[1]]
[1] "Dimensione: 3 Numero: 14"

[[2]]
[1] "Dimensione: 4 Numero: 1"

[[3]]
[1] "Dimensione: 13036 Numero: 1"

Rete dell’utenza condivisa

Gli archi mostrano la quantità di utenti che giocano a entrambi i giochi (nodi) adiacenti.

Visualizzazione con circos

Distribuzioni per le varie centralità

Confronto fra gli ordinamenti

Centralità mediata

Rete con centralità mediata

Potere

Cluster

Fast greedy: (modularità 0.160)

Louvain: (modularità 0.182)

Walktrap: (modularità 0.147)

La modularità basata su uguaglianza di tag è bassa ed è 0.02252084

Tag e cluster

Secondo il metodo Louvain:

Approccio per la raccomandazione dei giochi

Approccio per la raccomandazione dei giochi

Unione di più aspetti:

  • Flusso di giocatori verso altri giochi
  • Centralità e potenza nella rete
  • Correlazione sul bitset dei generi
  • Similarità con altri nodi della rete
  • Valutazioni dei critici e stime
  • Valutazioni degli utenti
  • Costo e tempo medio di gioco
  • Dimensione dell’utenza

Applicazione Shiny

Esempio d’uso

Conclusione

Molti altri aspetti da valutare:

  • Bontà Raccomandazioni
  • Classificazione per età
  • Categorizzare gli utenti

Risultati:

  • Scalabilità
  • Approccio parametrico
  • Possibilità di integrazione e verifica con ulteriori dati